rz_factor Interface

public interface rz_factor

Module Procedures

private pure subroutine rz_factor_dbl(a, tau, rz)

Factors an upper trapezoidal matrix by means of orthogonal transformations such that . is an orthogonal matrix of dimension N-by-N, and is an M-by-M upper triangular matrix.

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(in), dimension(:,:) :: a

The M-by-N upper trapezoidal matrix to factor.

real(kind=real64), intent(out), allocatable, dimension(:) :: tau

An M-element array used to store the scalar factors of the elementary reflectors.

real(kind=real64), intent(out), allocatable, dimension(:,:) :: rz

The leading M-by-M upper triangular part of this matrix contains the upper triangular matrix , and elements N-L+1 to N of the first M rows, with the array tau, represent the orthogonal matrix as a product of M elementary reflectors.

private pure subroutine rz_factor_cmplx(a, tau, rz)

Factors an upper trapezoidal matrix by means of orthogonal transformations such that . is an orthogonal matrix of dimension N-by-N, and is an M-by-M upper triangular matrix.

Arguments

Type IntentOptional Attributes Name
complex(kind=real64), intent(in), dimension(:,:) :: a

On input, the M-by-N upper trapezoidal matrix to factor. On output, the leading M-by-M upper triangular part of the matrix contains the upper triangular matrix , and elements N-L+1 to N of the first M rows of , with the array tau, represent the orthogonal matrix as a product of M elementary reflectors.

complex(kind=real64), intent(out), allocatable, dimension(:) :: tau

An M-element array used to store the scalar factors of the elementary reflectors.

complex(kind=real64), intent(out), allocatable, dimension(:,:) :: rz

The leading M-by-M upper triangular part of this matrix contains the upper triangular matrix , and elements N-L+1 to N of the first M rows, with the array tau, represent the orthogonal matrix as a product of M elementary reflectors.